Eine Funktion (englisch function) ist in der Informatik und in verschiedenen höheren Programmiersprachen die Bezeichnung eines Programmkonstrukts, mit dem der Programm-Quellcode strukturiert werden kann, so dass Teile der Funktionalität des Programms wiederverwendbar sind. Das besondere Merkmal einer Funktion (im Vergleich zum ähnlichen Konstrukt der Prozedur) ist, dass die Funktion ein Resultat direkt zurückgibt und deshalb in Ausdrücken verwendet werden kann. Die genaue Bezeichnung und Details ihrer Ausprägung sind in verschiedenen Programmiersprachen durchaus unterschiedlich.
Funktionen gelten als spezielle Varianten von Unterprogrammen.
Nicht zu verwechseln ist das Programmkonstrukt ‚Funktion‘ mit anderen Bedeutungen des Ausdrucks ‚Funktion‘, beispielsweise mit Funktionen im Sinn der Organisation oder der Systemtheorie oder mit Funktion im Sinne von Aufgabe.